package com.gxa.service.employee;

import com.gxa.common.R.ResponseData;
import com.gxa.pojo.Employee;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * 所有员工信息service层
 */
public interface EmployeeService {

    /**
     * 分页模糊查询所有员工信息
     * @param currentPage      当前第几页数
     * @param pageSize         每页显示条数
     * @param findKeyword      姓名模糊查询关键字
     * @return                 responseData返回类类型
     */
    ResponseData selectAllEmployeeList( String currentPage,String pageSize,String findKeyword);

    /**
     * 总计有多少条员工信息
     * @param findKeyword     姓名模糊查询关键字
     * @return                responseData返回类类型
     */
    int selectCount(String findKeyword);

    /**
     * 将在职员工设置为离职员工
     * @param employee      员工信息表实体类
     * @return              responseData返回类类型
     */
    ResponseData setDepartEmployee(Employee employee);

    /**
     * 编辑员工信息
     * @param employee      员工信息表实体类
     * @return              responseData返回类类型
     */
    ResponseData updateEmployee(Employee employee);

    /**
     * 通过员工编号ID删除员工信息
     * @param idList        需要删除的id数组
     * @return              responseData返回类类型
     */
    ResponseData delEmployee(List<Integer> idList);


}
